﻿//编辑对话框
var dlg = new MyAppDialog(700, 500);

$(document).ready(function () {
    //初始化表单验证
    initValidate();

    //保存
    $("#btnsave").click(function (evt) { evt.preventDefault(); save($(this)); });

    //取消
    $("#btncancel").click(function (evt) { parent.closeDialog(); return false; });

    //添加行
    $(".addRow").click(function (evt) {
        addRow();
    });

    ////选择字典库
    //$(".selectInspectItem").click(function (evt) {
    //    dlg.setSize(700, 480);
    //    dlg.setURL("选择检查子项目", "/Book/InspectItemSelect?callback=addInspectItem");
    //    dlg.show();
    //});

});


//数据验证
function initValidate() {
    //表单验证
    $('#inputform').validate({
        rules: {
            Code: {
                required: true,
                maxlength: 50,
                remote: {
                    url: baseurl + 'Dict/Dict/ExistCheck',
                    type: 'post',
                    data: {
                        id: $("#Id").val(),
                        Code: $("#Code").val(),
                       
                    },
                    dataFilter: function (data, type) {
                        if (data == "yes")
                            return true;
                        else
                            return false;
                    }
                }
            },
            Name_cn: { required: true, maxlength: 200 },
            Nname_en: { maxlength: 200 },
            //Sort: { vdigits:true},
            //Chemicalname: { maxlength: 200 },
            Remark: {
                maxlength: 300
            }
        },
        errorPlacement: function (error, element) {
            error.appendTo(element.parent());
        },
        messages: {
            Code: {
                remote: '字典代码已经存在'
            }
        }
    });
}


//添加行
function addRow(data) {
    //在列表中添加一行
    var row = $("#list_table .list-template tr").eq(0).clone();
    row.appendTo("#list_table .list-data");

    //行ID
    $(row).attr("data-id", "0");
    //为每个控件生成动态id和name，否则表单验证会有问题
    var newid = (new Date()).getMilliseconds();
    $(row).find(".list-datafield").each(function () {
        $(this).attr("id", $(this).attr("id") + "_" + newid);
        $(this).attr("name", $(this).attr("name") + "_" + newid);
    });
    //为每行添加验证规则
    $(row).find("[data-fieldname='Code']").rules("add", { required: true });
    $(row).find("[data-fieldname='Name_cn']").rules("add", { required: true });

    //行数据
    if (data) {
        //行ID
        $(row).attr("data-id", data.Id);
        //行数据
        $(row).find(".list-datafield").each(function () {
            $(this).val(data[$(this).attr("data-fieldname")]);
        });

        //$(row).find("[data-fieldname='Inspectitemcode']").val(data.Inspectitemcode);
        //$(row).find("[data-fieldname='Inspectitemname_cn']").val(data.Inspectitemname_cn);
        //$(row).find("[data-fieldname='Itemtype']").val(data.Itemtype);
        //$(row).find("[data-fieldname='Minval']").val(data.Minval);
        //$(row).find("[data-fieldname='Maxval']").val(data.Maxval);
        //$(row).find("[data-fieldname='Unit']").val(data.Unit);
        //$(row).find("[data-fieldname='Combostr']").val(data.Combostr);
        //$(row).find("[data-fieldname='Defvalue']").val(data.Defvalue);
    }

    //删除行事件
    $(row).find("#btndelrow").click(function () {
        var rowId = $(row).attr("data-id");
        if (rowId == "0") {
            //如果是新加的行，则直接移除
            $(row).remove();
        } else {
            //否则移到隐藏区域，等待保存
            $(row).appendTo($("#list_table .list-deleted"));
        }
    });
}

//保存数据
function save(obj) {
    //表单验证
    if (!$("#inputform").valid()) {
        return;
    }
    
    var jsondata = {
        
        Id: $("#Id").val(),
      
        Values: {
            ParentCode: $("#hidCode").val(),
        }
        //MedicationProduct: [],
        //MedicationProductDelete: []

    };
   
    //主表数据
    $("#inputform .datafield").each(function () {
        jsondata.Values[$(this).attr("data-fieldname")] = $(this).val();
    });



    //禁用保存按钮，防止重复提交
    $(obj).attr("disabled", true);

    //alert(JSON.stringify(jsondata));
    //保存数据
    $.ajax({
        type: "post",
        url: baseurl + "Dict/Dict/Save",
        data: { json: JSON.stringify(jsondata) },
        success: function (e) {
            $(obj).attr("disabled", false);
            if (e.Ret == "0") {
                parent.closeDialog(true);
            } else {
                $.messager.alert(csms_lang.message_error, e.Msg);
            }
        }
    });
}
